package com.zhongkai.app.service;

import com.zhongkai.model.utils.ZhongkaiResult;

import java.io.IOException;

/**
 * 设备列表
 */
public interface SetUnitService {

    /**
     * 查询 在线 离线
     *
     * @param trus   标识 1已绑定 2已托管  3未绑定
     * @param wire   是否在线 1在线 2离线
     */

    ZhongkaiResult unit_search(String trus,String wire,Integer page, Integer rows);

    ZhongkaiResult unit_list(String is_assign, Integer page, Integer rows); //设备列表

    ZhongkaiResult unit_update(String uuid, String address, String province, String city,
                               String country, String town, String longitude, String latitude,  String set_vol_uuid, String setAlias); //设备修改

    ZhongkaiResult unit_remove(String uuid); //设备删除

    ZhongkaiResult unit_userQ(String name, String province, String city, String country, String town, Integer page, Integer rows); //设备搜索

    ZhongkaiResult unit_trusteeship(Integer page, Integer rows) throws IOException; //已托管设备

    ZhongkaiResult unit_upgrade(String list); //设备升级

    /**
     * 区域111.61.64.62
     *
     * @param area   区域标识 1省 2市 3区 4乡镇
     * @param areaId 区域id
     */
    ZhongkaiResult unit_area(String area ,String areaId); //设备区域升级


    //为设备绑定用户

    /**
     * 为设备
     *
     * @param unit_uuid   设备uuid
     * @param user_name   用户姓名
     * @param user_phone  用户手机号
     * @param user_number 身份证号
     * @param sex         性别 1男 2女
     * @param longitude   经度
     * @param latitude    纬度
     * @param province    省
     * @param city        市
     * @param country     区
     * @param town        乡镇
     * @param address     详细地址
     * @param ope_user    操作人员姓名
     * @param ope_uuid    操作人员uuid
     * @param pact_num    合同编号
     * @param set_vol_uuid  大客户uuid 传0代表没有
     * @param setAlias  设备别名

     */
    ZhongkaiResult bound_user(String unit_uuid, String user_name, String user_phone,
                              String user_number, String sex, String longitude,
                              String latitude, String province, String city,
                              String country, String town, String address,
                              String ope_user, String ope_uuid,String pact_num,
                              String set_vol_uuid,String setAlias


    ); //为未绑定用户的设备绑定 用户

    /**
     * 默认版本号查询
     * */
    ZhongkaiResult versions_code();


    /**
     * 获取大客户列表
     * */
    ZhongkaiResult getBigUserList();



    /**
     * 设备托管
     *
     * @param unit_uuid  设备uuid
     * @param trusteeship  托管参数 1取消托管  2托管
     */
    ZhongkaiResult uniTrusteeship(String unit_uuid,String trusteeship);


    /***
     * 解除绑定
     *
     * @param unit_uuid  设备uuid
     * @param user_uuid  用户uuid
     * */
    ZhongkaiResult relieveUnit(String unit_uuid,String user_uuid);
}
